It has been known to detect a steering torque which is applied to the steering wheel and the speed of steering input, and produce a torque assisting the steering operation by carrying out a pulse width modulation (PWM) control of an electric motor attached to the steering system with a control circuit consisting of a CPU. The output end of such a control circuit typically comprises a bridge circuit having a bipolar transistor or a FET on each of its arms. The input terminals of the bridge circuit are connected to a DC power source, and its output terminals are connected to the motor. By activating the transistors located on diagonally opposing arms of the bridge circuit, the motor may be driven in a desired direction. By activating one of the transistors or both the transistors according to a certain duty factor, it is also possible to control the output torque of the motor.
In such a motor control circuit, reliable operation of the CPU is essential for a satisfactory control of the motor. If the CPU becomes unable to produce a proper output due to a hardware failure or a software error, a satisfactory control of the motor becomes impossible. Most of such hardware and software failures can be detected by appropriate use of a watch dog timer circuit and current sensors arranged in appropriate parts of the control circuit, but it is extremely difficult to cover all possible modes of failure with these means alone.
As an alternative approach, it is possible to provide two control circuits in parallel, and carry out a motor control only when the outputs from the control circuit agree with each other. However, since motors are typically controlled by a high frequency pulse signal (typically in 20 kHz or higher range), it is difficult to achieve a necessary synchronism between the two control circuits.